
// 正整数,小数最多保留2位小数
export const numberInput = {
  mounted(el, binding, vnode) {
    const regex = /^\d+(\.\d{0,2})?$/;

    el.addEventListener('input', function(e) {
      const input = e.target;
      if (!regex.test(input.value)) {
        // 不符合要求，清空非法内容
        input.value = input.value.replace(/[^\d.]/g, '');
        const parts = input.value.split('.');
        if (parts.length > 1) {
          // 限制小数部分最多为 2 位
          parts[1] = parts[1].slice(0, 2);
          input.value = parts.join('.');
        }
      }
    });
  },
};